The Generic Message Passing Framework
نویسندگان
چکیده
This paper presents the design and implementation of the Generic Message Passing framework (GMP). The design of the GMP is guided by two goals: programmer productivity and run-time performance—particularly for parallel systems having both shared and distributed memory (e.g., clusters of SMPs). To achieve these goals simultaneously, the GMP uses a generic programming paradigm, allowing it to integrate seamlessly with modern generic libraries such as the C++ Standard Library. In addition the GMP presents a single parallel programming model, namely message passing. The implementation of the GMP fully exploits the architectural characteristics of its execution target for maximum run-time performance. Performance results are presented that demonstrate the effectiveness of the Generic Message Passing framework.
منابع مشابه
Unifying Message Passing Algorithms Under the Framework of Constrained Bethe Free Energy Minimization
Variational message passing (VMP), belief propagation (BP), expectation propagation (EP) and more recent generalized approximate message passing (GAMP) have found their wide uses in complex statistical inference problems. In addition to view them as a class of algorithms operating on graphical models, this paper unifies them under an optimization framework, namely, Bethe free energy minimizatio...
متن کاملGOOMPI: A Generic Object Oriented Message Passing Interface
This paper discusses the application of object-oriented and generic programming techniques in high performance parallel computing, then presents a new message-passing interface based on object-oriented and generic programming techniques — GOOMPI, describes its design and implementation issues, shows its values in designing and implementing parallel algorithms or applications based on the messag...
متن کاملGeneric Parallel Genetic Algorithm Framework for Protein Optimisation
Proteins are one of the most vital macromolecules on the cellular level. In order to understand the function of a protein, its structure needs to be determined. For this purpose, different computational approaches have been introduced. Genetic algorithms can be used to search the vast space of all possible conformations of a protein in order to find its native structure. A framework for design ...
متن کاملErlang Behaviours: Programming with Process Design Patterns
Erlang processes run independently of each other, each using separate memory and communicating with each other by message passing. These processes, while executing different code, do so following a number of common patterns. By examining different examples of Erlang-style concurrency in client/server architectures, we identify the generic and specific parts of the code and extract the generic c...
متن کاملUsing Bisimulation Proof Techniques for the Analysis of Distributed Algorithms
We illustrate the use of recently developped proof techniques for weak bisimulation by analysing a generic framework for the definition of distributed abstract machines based on a message-passing implementation. We first define this framework, and then focus on the algorithm which is used to route messages asynchronously to their destination. A first version of this algorithm can be analysed us...
متن کامل